"""
@name : 词频统计
@author : FengZT_19
@projectname: Scxuexi
"""

# 词频统计
import string
# 使用utf-8-sig可以避免在文件开头出现\ufeff
with open("Walden.txt", encoding='utf-8-sig') as fp:
    str1 = fp.read()
# 将所有的标点和数字存于字符串biaodian中
biaodian = string.punctuation + '0123456789'
# 依次替换所有的标点和数字
for i in biaodian:
    str1 = str1.replace(i, ' ')
# 当不给split函数传递任何参数时，分隔符sep会采用任意形式的空白字符：空格、tab、换行、回车以及formfeed
list1 = list(str1.split())
dict1 = {}
for j in list1:
    # 将单词全部转换为小写
    x = j.lower()
    # 如果单词已经存入字典，则出现次数+1
    if x in dict1:
        dict1[x] = dict1[x] + 1
    # 如果单词为第一次出现，则为第一次出现
    else:
        dict1[x] = 1
print(dict1)

